package com.cq.hd.order.render;

import com.cq.hd.member.api.vo.BusinessPointsMallSettingsVo;
import com.cq.hd.order.api.dto.CreateOrderDto;
import com.cq.hd.order.api.dto.OrderCommissionDto;
import com.cq.hd.order.po.TbGroupBuyOrderPo;
import com.cq.hd.order.render.dto.ActiveGoodsDto;
import com.cq.hd.order.render.dto.AgentInfo;
import com.cq.hd.order.render.dto.PriceDetailDto;
import com.cq.hd.order.render.dto.SplitAccItemDto;
import com.cq.hd.product.api.vo.ActiveRedPacketBillPageVo;
import com.cq.hd.product.api.vo.ActiveVo;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;


/**
 * @author much
 * @since 2024/09/11 22:11
 */
@Data
public class OrderContext {

    public OrderContext() {
        this.priceDetailDTO = new PriceDetailDto();
        this.activeGoods = new ArrayList<>();
        this.commissionDto = new OrderCommissionDto();
    }

    // 创建订单基本信息
    private CreateOrderDto createOrderDto;

    // 活动信息
    private ActiveVo activeVo;

    // 商家积分商城设置
    private BusinessPointsMallSettingsVo businessPointsMallSettingsVo;

    // 商家自有商户id
    private Long businessMerchantId;

    // 红包信息
    private ActiveRedPacketBillPageVo activeRedPacketBillPageVo;

    // 计价明细
    private PriceDetailDto priceDetailDTO;

    // 经纪人信息
    private AgentInfo agentInfo;

    // 佣金
    private OrderCommissionDto commissionDto;

    // 商品信息
    private List<ActiveGoodsDto> activeGoods;

    // 分单明细
    private List<SplitAccItemDto> splitAccItems;

    // 是否需要补贴
    private Boolean needSubsidy;

    // 拼团主单信息
    private TbGroupBuyOrderPo groupBuyOrderPo;

    public Long getActiveId() {
        return createOrderDto.getActiveId();
    }

    public Long getUserId() {
        return createOrderDto.getUserId();
    }

}
